In today's business environment, many applications and solutions need to use data that are expressed in different formats and languages. Effective use of data often requires that data be transformed from one data format into another.
For example, healthcare providers, such as physicians, create large volumes of patient information at healthcare facilities, such as hospitals, clinics, laboratories, and medical offices. Often, a patient may be treated by more than one healthcare provider, necessitating that the patient's records at one healthcare provider be readily available to other healthcare providers, as this information might be critical to the healthcare provider when treating the patient. Unfortunately, the wide variety of formats in which information is stored might impede the healthcare provider's ability to assimilate the information. Although medical data may be converted from one format to another to facilitate data interchange and thereby potentially improve patient care, doing so efficiently and at a minimum cost is vital in light of spiraling medical costs.
In many cases, transformation of data from a source format into a target format is carried out as a series of transformations to one or more intermediate data formats. While transformations might also be required that unify multiple data formats (i.e., many-to-one cardinality), that result in several target formats (i.e., one-to-many cardinality), or both (i.e., many-to-many cardinality), techniques for determining the most efficient paths for transformations of various cardinalities do not currently exist.